package com.gitee.qdbp.base.system.service;

import java.util.List;
import com.gitee.qdbp.base.system.model.IAccountType;

/**
 * 默认值配置, 用于用户登录前的数据隔离
 *
 * @author zhaohuihua
 * @version 170719
 */
public interface IDefaultValueConfig {

    /** 默认的租户编号 **/
    String getTenantCode();

    /** 用户类型枚举类 **/
    Class<? extends Enum<?>> getUserTypeClass();

    /** 默认的用户类型 **/
    IAccountType getUserType();

    /** 备选的用户类型, 允许一个工程支持多个用户类型登录注册 **/
    List<IAccountType> getUserTypeChoose();

    interface Aware {

        void setDefaultValueConfig(IDefaultValueConfig defaultValues);
    }
}
